package sk.tuke.serviceInterface;

import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

import org.apache.cxf.feature.Features;

import sk.tuke.domain.IO.businessManagement.CreateDepartmentInput;
import sk.tuke.domain.IO.businessManagement.CreateInstituteInput;
import sk.tuke.domain.IO.businessManagement.CreateInsuranceInput;
import sk.tuke.domain.IO.businessManagement.GetDepartmentInput;
import sk.tuke.domain.IO.businessManagement.GetInsuranceInput;

@Produces(MediaType.APPLICATION_JSON)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
public interface BusinessManagementService {

	@POST
	@Path("/createinstitute")
	public Response CreateInstitute(CreateInstituteInput createInstituteInput) throws Throwable;

	@POST
	@Path("/createinsurance")
	public Response CreateInsurance(CreateInsuranceInput createInsuranceInput) throws Throwable;

	@POST
	@Path("/createdepartment")
	public Response CreateDepartment(CreateDepartmentInput createDepartmentInput) throws Throwable;
	
	@GET
	@Path("/getinsurance")
	public Response getInsurance(@QueryParam("") GetInsuranceInput getInsuranceInput) throws Throwable;
	
	@GET
	@Path("/getdepartment")
	public Response getDepartment(@QueryParam("") GetDepartmentInput getDepartmentInput) throws Throwable;

}
